package com.shop.cereshop.commons.domain.report.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * 举报记录VO
 *
 * @author
 */
@Data
@ApiModel(value = "ReportRecordVO", description = "举报记录返回对象")
public class ReportRecordVO {

    /**
     * 举报ID
     */
    @ApiModelProperty(value = "举报ID")
    private Long reportId;

    /**
     * 举报人用户ID
     */
    @ApiModelProperty(value = "举报人用户ID")
    private Long reporterUserId;

    /**
     * 举报人用户名
     */
    @ApiModelProperty(value = "举报人用户名")
    private String reporterUserName;

    /**
     * 被举报人用户ID
     */
    @ApiModelProperty(value = "被举报人用户ID")
    private Long reportedUserId;

    /**
     * 被举报人用户名
     */
    @ApiModelProperty(value = "被举报人用户名")
    private String reportedUserName;

    /**
     * 举报目标类型：1-动态 2-视频 3-评论 4-用户
     */
    @ApiModelProperty(value = "举报目标类型：1-动态 2-视频 3-评论 4-用户")
    private Integer targetType;

    /**
     * 举报目标类型名称
     */
    @ApiModelProperty(value = "举报目标类型名称")
    private String targetTypeName;

    /**
     * 举报目标ID
     */
    @ApiModelProperty(value = "举报目标ID")
    private Long targetId;

    /**
     * 举报类型ID
     */
    @ApiModelProperty(value = "举报类型ID")
    private Long reportTypeId;

    /**
     * 举报类型名称
     */
    @ApiModelProperty(value = "举报类型名称")
    private String reportTypeName;

    /**
     * 举报原因描述
     */
    @ApiModelProperty(value = "举报原因描述")
    private String reportReason;

    /**
     * 举报证据图片列表
     */
    @ApiModelProperty(value = "举报证据图片列表")
    private List<String> reportImages;

    /**
     * 举报状态：0-待审核 1-审核中 2-已处理 3-已驳回
     */
    @ApiModelProperty(value = "举报状态：0-待审核 1-审核中 2-已处理 3-已驳回")
    private Integer reportStatus;

    /**
     * 举报状态名称
     */
    @ApiModelProperty(value = "举报状态名称")
    private String reportStatusName;

    /**
     * 审核人ID
     */
    @ApiModelProperty(value = "审核人ID")
    private Long auditUserId;

    /**
     * 审核人用户名
     */
    @ApiModelProperty(value = "审核人用户名")
    private String auditUserName;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间")
    private String auditTime;

    /**
     * 审核结果：1-违规 2-不违规
     */
    @ApiModelProperty(value = "审核结果：1-违规 2-不违规")
    private Integer auditResult;

    /**
     * 审核结果名称
     */
    @ApiModelProperty(value = "审核结果名称")
    private String auditResultName;

    /**
     * 审核备注
     */
    @ApiModelProperty(value = "审核备注")
    private String auditRemark;

    /**
     * 处理结果：1-删除内容 2-警告用户 3-封禁用户 4-无处理
     */
    @ApiModelProperty(value = "处理结果：1-删除内容 2-警告用户 3-封禁用户 4-无处理")
    private Integer handleResult;

    /**
     * 处理结果名称
     */
    @ApiModelProperty(value = "处理结果名称")
    private String handleResultName;

    /**
     * 处理备注
     */
    @ApiModelProperty(value = "处理备注")
    private String handleRemark;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private String createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private String updateTime;
}
